﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Openapi.Weibo.Api;
using RestSharp;

namespace Openapi.Weibo
{
    public partial class Client
    {
        private StatusesApi _statuses;
        /// <summary>
        /// 微博接口
        /// </summary>
        public StatusesApi Statuses
        {
            get
            {
                if (_statuses == null)
                {
                    _statuses = new StatusesApi(_restApi);
                }
                return _statuses;
            }
        }

        private CommentsApi _comments;
        /// <summary>
        /// 评论接口
        /// </summary>
        public CommentsApi Comments
        {
            get
            {
                if (_comments == null)
                {
                    _comments = new CommentsApi(_restApi);
                }
                return _comments;
            }
        }

        private UsersApi _users;
        /// <summary>
        /// 用户接口
        /// </summary>
        public UsersApi Users
        {
            get
            {
                if (_users == null)
                {
                    _users = new UsersApi(_restApi);
                }
                return _users;
            }
        }

        private FriendshipsApi _friendships;
        /// <summary>
        /// 关系接口
        /// </summary>
        public FriendshipsApi Friendships
        {
            get
            {
                if (_friendships == null)
                {
                    _friendships = new FriendshipsApi(_restApi);
                }
                return _friendships;
            }
        }

        private AccountApi _account;
        /// <summary>
        /// 账号接口
        /// </summary>
        public AccountApi Account
        {
            get
            {
                if (_account == null)
                {
                    _account = new AccountApi(_restApi);
                }
                return _account;
            }
        }

        private FavoritesApi _favorites;
        /// <summary>
        /// 收藏接口
        /// </summary>
        public FavoritesApi Favorites
        {
            get
            {
                if (_favorites == null)
                {
                    _favorites = new FavoritesApi(_restApi);
                }
                return _favorites;
            }
        }

        private TrendsApi _trends;
        /// <summary>
        /// 话题接口
        /// </summary>
        public TrendsApi Trends
        {
            get
            {
                if (_trends == null)
                {
                    _trends = new TrendsApi(_restApi);
                }
                return _trends;
            }
        }

        private TagsApi _tags;
        /// <summary>
        /// 标签接口
        /// </summary>
        public TagsApi Tags
        {
            get
            {
                if (_tags == null)
                {
                    _tags = new TagsApi(_restApi);
                }
                return _tags;
            }
        }

        private TegisterApi _tegister;
        /// <summary>
        /// 注册接口
        /// </summary>
        public TegisterApi Tegister
        {
            get
            {
                if (_tegister == null)
                {
                    _tegister = new TegisterApi(_restApi);
                }
                return _tegister;
            }
        }

        private SearchApi _search;
        /// <summary>
        /// 搜索接口
        /// </summary>
        public SearchApi Search
        {
            get
            {
                if (_search == null)
                {
                    _search = new SearchApi(_restApi);
                }
                return _search;
            }
        }

        private SuggestionsApi _suggestions;
        /// <summary>
        /// 推荐接口
        /// </summary>
        public SuggestionsApi Suggestions
        {
            get
            {
                if (_suggestions == null)
                {
                    _suggestions = new SuggestionsApi(_restApi);
                }
                return _suggestions;
            }
        }

        private RemindApi _remind;
        /// <summary>
        /// 提醒接口
        /// </summary>
        public RemindApi Remind
        {
            get
            {
                if (_remind == null)
                {
                    _remind = new RemindApi(_restApi);
                }
                return _remind;
            }
        }

        private ShortUrlApi _shortUrl;
        /// <summary>
        /// 转换接口
        /// </summary>
        public ShortUrlApi ShortUrl
        {
            get
            {
                if (_shortUrl == null)
                {
                    _shortUrl = new ShortUrlApi(_restApi);
                }
                return _shortUrl;
            }
        }

        private NotificationApi _notification;
        /// <summary>
        /// 通知接口
        /// </summary>
        public NotificationApi Notification
        {
            get
            {
                if (_notification == null)
                {
                    _notification = new NotificationApi(_restApi);
                }
                return _notification;
            }
        }

        private CommonApi _common;
        /// <summary>
        /// 公共服务接口
        /// </summary>
        public CommonApi Common
        {
            get
            {
                if (_common == null)
                {
                    _common = new CommonApi(_restApi);
                }
                return _common;
            }
        }

        private PlaceApi _place;
        /// <summary>
        /// 位置服务接口
        /// </summary>
        public PlaceApi Place
        {
            get
            {
                if (_place == null)
                {
                    _place = new PlaceApi(_restApi);
                }
                return _place;
            }
        }

        private LocationApi _location;
        /// <summary>
        /// 地理信息接口
        /// </summary>
        public LocationApi Location
        {
            get
            {
                if (_location == null)
                {
                    _location = new LocationApi(_restApi);
                }
                return _location;
            }
        }


    }
}
